#!/bin/bash
# 终止正运行的程序，拷贝应用，并启动

# 固定进程名
PROCESS_NAME="mcs-gfapi"

# 定义源文件和目标文件夹
SRC_FILE="./bin/v1.0.0/linux_amd64/mcs-gfapi"
DST_FILE="./mcs-gfapi"

# 查找并杀死匹配的进程
pids=$(pgrep -f "$PROCESS_NAME")

if [ -z "$pids" ]; then
  echo "未找到名为 '$PROCESS_NAME' 的进程。"
else
  # 逐一终止进程
  for pid in $pids; do
    kill -9 "$pid"
    echo "已终止进程 PID: $pid"
  done
fi


# 拷贝文件到目标文件夹并覆盖
if [ -f "$SRC_FILE" ]; then
  cp -f "$SRC_FILE" "$DST_FILE"
  echo "文件已从 $SRC_FILE 拷贝到 $DST_FILE 并覆盖。"

  # 设置目标文件为可执行
  chmod +x "$DST_FILE"
  echo "已设置 $DST_FILE 为可执行文件。"
else
  echo "源文件 $SRC_FILE 不存在，无法拷贝。"
fi

# nohup启动进程
EXECUTABLE="./mcs-gfapi" # 将此路径替换为实际可执行文件路径
nohup $EXECUTABLE > output.log 2>&1 &